
import { INCREMENT } from './mutations-types'

export default {  //同步 更改state
  //方法
  // increment(state) {
  //   state.counter++
  // },
  [INCREMENT](state) {  ///注意    es6使用常亮 定义 方法名 
    state.counter++
  },
  decrement(state) {
    state.counter--
  },
  incrementCount(state, n) { //动态更改 state
    console.log('mutations->incrementCount n=', n)
    state.counter += n
  },


  // 注意： 当commit 传过来是 {type: 'incrementCount', count}

  // incrementCount(state, Payload) { //动态更改 state
  //   console.log('mutations->incrementCount n=', Payload)
  //   state.counter += Payload.count;
  // },

  updateInfo(state) {  //视频 136 响应式
    state.info.bookName = 'Lua'


    // ==== 一、新增 ====
    // 注意  注意  注意
    // state.info['address'] = 'Beijing'; 
    // 因为 state没有初始化 info中的address，mutations 就不会监听
    // 导致【不会更新 UI】 , state内容也确实改了 ****

    // so, 你想要 让它 刷新UI 怎么做呢？
    // -- 1 --
    // Vue.set(state.info, 'address', 'Beijing')

    //------------------------------------------------------------------------
    // ==== 二、删除 =====
    // delete state.info.age
    // 该方式 【做不到响应式】     ****

    // so ，解决
    // Vue.delete(state.info, 'age')

  },
}